From 23190c25c3d9df4f38431612f7d46d1f4f88a83c Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Fri, 30 Jun 2006 10:13:17 +0100 Subject: [PATCH] [HVM][SVM] Don't BUG when VMRUN exitcode==-1, just crash the domain. If there's any consistency problems in the VMCB, the VMRUN will return an exitcode of -1 to indicate that the guest-state is "bad". Prior to this change, it would cause the hypervisor to reboot. This is not at all necessary - the VMCB may be bad, but the system is most likely still intact. [In particular, a guest could cause a crash of the system by setting up PAE with an invalid set of PDPE's, which is definitely not a desired behaviour] Now also print out the VMCB, as that MAY help identify the cause of the exitcode of -1. Signed-off-by: Mats Petersson --- xen/arch/x86/hvm/svm/svm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xen/arch/x86/hvm/svm/svm.c b/xen/arch/x86/hvm/svm/svm.c index db628b2210..29f74e8a0f 100644 --- a/xen/arch/x86/hvm/svm/svm.c +++ b/xen/arch/x86/hvm/svm/svm.c @@ -2697,9 +2697,9 @@ asmlinkage void svm_vmexit_handler(struct cpu_user_regs regs) if (exit_reason == -1) { + svm_dump_vmcb(__func__, vmcb); printk("%s: exit_reason == -1 - Did someone clobber the VMCB\n", __func__); - BUG(); domain_crash_synchronous(); } -- 2.30.2